﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

using Texfina.Core.Common;
using Texfina.Entity.Co;
using Texfina.Core.Web;
using Texfina.BOQry.Co;
using System.Collections;


namespace CO
{
    public partial class WfProveedor : PageBase
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (IsCallback) return;

            if (!Page.IsPostBack)
            {
                LoadData();
                mObetenerDatosPrevios();
                mCargarDatos();
            }
        }

        private void mObetenerDatosPrevios()
        {
            try
            {
                if (Session["htaProvCli"] != null)
                {
                    Hashtable htaDatos = new Hashtable();
                    htaDatos = (Hashtable)Session["htaProvCli"];
                    txtCodProv.Text = string.IsNullOrEmpty(htaDatos["id_clipro"].ToString()) ? string.Empty : htaDatos["id_clipro"].ToString();
                    hidVentana.Value = string.IsNullOrEmpty(htaDatos["in_ventana"].ToString()) ? string.Empty : htaDatos["in_ventana"].ToString();
                }
                else
                {
                    Session["htaProvCli"] = null;
                    Hashtable HtaDatos = new Hashtable();
                    Session["htaProvCliNuevo"] = HtaDatos;

                    HtaDatos = (Hashtable)Session["htaProvCliNuevo"];
                }
            }
            catch (Exception ex)
            {
                Response.Write(ex.ToString());
            }
        }


        private void mCargarDatos()
        {
            try
            {
                if (!string.IsNullOrEmpty(txtCodProv.Text))
                {
                    ETerceros ocliprov = new ETerceros();

                    ocliprov.Id_clipro = string.IsNullOrEmpty(txtCodProv.Text) ? string.Empty : Convert.ToString(txtCodProv.Text);
                    ocliprov.Id_empresa = Session[ConstSessionVar.EMPRESA].ToString();

                    ETerceros oBtieneOC = new ETerceros();
                    oBtieneOC = BProveedor.mObtenerCliProv_(ocliprov);
                    txtCodProv.Text = oBtieneOC.Id_clipro.ToString().Trim();
                    ddPersoneria.SelectedValue = oBtieneOC.Id_vpersjuri.ToString().Trim();
                    ddCalificacion.SelectedValue = oBtieneOC.Id_vtipclasi.ToString().Trim();
                    dpTipSociedad.SelectedValue = oBtieneOC.Id_vtipsocie.ToString().Trim();
                    txtRazonSoc.Text = oBtieneOC.Ds_raznombre.ToString().Trim();
                    txtApellido.Text = oBtieneOC.Ds_apellido.ToString().Trim();
                    txtNombrecomercial.Text = oBtieneOC.Ds_nomcomer.ToString().Trim();
                    txtRuc.Text = oBtieneOC.Nu_ruc.ToString().Trim();
                    ddlidTDocIden.SelectedValue = oBtieneOC.Id_vtipdoc.ToString().Trim();
                    txtnuDoc.Text = oBtieneOC.Nu_dociden.ToString().Trim();
                    ddGrupo.SelectedValue = oBtieneOC.Id_grupo.ToString().Trim();
                    txtDir.Text = oBtieneOC.Ds_direccion.ToString().Trim();
                    txtUrbanizacion.Text= oBtieneOC.Ds_urbaniza.ToString().Trim();
                    ddPais.SelectedValue = oBtieneOC.Id_pais.ToString().Trim();
                    WebHelper.LoadListControl2(ddDepa, BUbigeo.Departamento_qry01(ddPais.SelectedValue), "dsNombre", "idDepa");
                    ddDepa.SelectedValue = oBtieneOC.Id_depto.ToString().Trim();
                    WebHelper.LoadListControl2(ddProv, BUbigeo.Provincia_qry01(ddPais.SelectedValue, ddDepa.SelectedValue), "dsNombre", "idProv");
                    ddProv.SelectedValue = oBtieneOC.Id_prov.ToString().Trim();
                    WebHelper.LoadListControl2(ddDistrito, BUbigeo.Distrito_qry01(ddPais.SelectedValue, ddDepa.SelectedValue, ddProv.SelectedValue), "dsNombre", "idDist");
                    ddDistrito.SelectedValue = oBtieneOC.Id_dist.ToString().Trim();
                    txtTelef.Text = oBtieneOC.Nu_telf1.ToString().Trim();
                    txtNumCelular.Text = oBtieneOC.Nu_telf2.ToString().Trim();
                    txtFax.Text= oBtieneOC.Nu_fax1.ToString().Trim();
                    txtEmail.Text = oBtieneOC.Ds_emailco.ToString().Trim();
                    txtWeb.Text = oBtieneOC.Ds_url.ToString().Trim();
                    txtApePaterno.Text = oBtieneOC.Ds_appreleg.ToString();
                    txtApeMat.Text = oBtieneOC.Ds_apmreleg.ToString().Trim();
                    txtNom.Text = oBtieneOC.Ds_nomreleg.ToString().Trim();
                    txtTelf_.Text = oBtieneOC.Nu_tlfreleg.ToString().Trim();
                    txtNumCelular.Text = oBtieneOC.Nu_telf2.ToString().Trim();
                    txtAnexo.Text = oBtieneOC.Nu_anxreleg.ToString().Trim();
                    txtMail.Text = oBtieneOC.Ds_emailco.ToString().Trim();
                    ddav.SelectedValue = oBtieneOC.Id_vtipcalle.ToString().Trim();
                    ddCliente.SelectedValue = oBtieneOC.St_vtipcli.ToString().Trim();
                    ddProveedor.SelectedValue = oBtieneOC.St_vtippro.ToString().Trim();

                }
            }
            catch (Exception ex)
            {
                ex.ToString();
            }
        }


        private void LoadData()
        {
            WebHelper.LoadListControl2(ddPersoneria, BTablaGeneral.TablaGeneralFill("023"), "ds_item", "id_item");
            WebHelper.LoadListControl2(ddlidTDocIden, BTablaGeneral.MG_TablaGenDet_qry04("001", ""), "dsDescrip", "idCodigo");
            WebHelper.LoadListControl2(ddav, BTablaGeneral.MG_TablaGenDet_qry04("002", ""), "dsDescrip", "idCodigo");
            WebHelper.LoadListControl2(ddGrupo, BGrupo.TablaGrupo_qry02(), "ds_grupo", "id_grupo");
            WebHelper.LoadListControl2(ddCalificacion, BTablaGeneral.TablaGeneralFill("138"), "ds_item", "id_item");
            WebHelper.LoadListControl2(dpTipSociedad, BTablaGeneral.TablaGeneralFill("026"), "ds_item", "id_item");
            WebHelper.LoadListControl2(ddPais, BUbigeo.Pais_qry01(), "dsNombre", "idPais");


            String strTextoSeleccione = "Seleccione";

            ddPersoneria.Items.Insert(0, new ListItem(strTextoSeleccione, "0"));
            ddlidTDocIden.Items.Insert(0, new ListItem(strTextoSeleccione, "0"));
            ddav.Items.Insert(0, new ListItem(strTextoSeleccione, "0"));
            ddGrupo.Items.Insert(0, new ListItem(strTextoSeleccione, "0"));
            ddCalificacion.Items.Insert(0, new ListItem(strTextoSeleccione, "0"));
            dpTipSociedad.Items.Insert(0, new ListItem(strTextoSeleccione, "0"));
            ddPais.Items.Insert(0, new ListItem(strTextoSeleccione, "0"));

            ddDepa.Items.Insert(0, new ListItem(strTextoSeleccione, "0"));
            ddProv.Items.Insert(0, new ListItem(strTextoSeleccione, "0"));
            ddDistrito.Items.Insert(0, new ListItem(strTextoSeleccione, "0"));

          
           
        }


        public void RefreshLoadNumbers()
        {

            AddCallbackControl(ddPersoneria);
            AddCallbackControl(ddlidTDocIden);
            AddCallbackControl(ddav);
            AddCallbackControl(ddGrupo);
            AddCallbackControl(ddCalificacion);
            AddCallbackControl(ddPais);
            AddCallbackControl(ddDepa);
            AddCallbackControl(ddProv);
            AddCallbackControl(dpTipSociedad);
            AddCallbackControl(ddDistrito);
            
        }
        protected void mnuToolbar_MenuItemClick(object sender, MenuEventArgs e)
        {
            if (e.Item == null)
                return;

            switch (e.Item.Value)
            {
                case Constants2.ConstMenuToolbarValue.BUTTON_SAVE:


           ETerceros prov = new ETerceros();
           DropDownList idOC = new DropDownList();
            if (txtCodProv.Text == "")
            {
                WebHelper.LoadListControl2(idOC, BTercero.Terceso_qry02(Session[ConstSessionVar.EMPRESA].ToString()), "id_clipro", "id_clipro");
                hddIdTercero.Value = idOC.SelectedItem.Text;
                prov.Id_clipro = hddIdTercero.Value;
                txtCodProv.Text = hddIdTercero.Value;
            }
            else
            {
                prov.Id_clipro = txtCodProv.Text;
            }
                prov.Id_empresa = Session[ConstSessionVar.EMPRESA].ToString();//llenar con sesion
                prov.Id_vpersjuri = ddPersoneria.SelectedValue;
                prov.Id_vtipsocie = dpTipSociedad.SelectedValue;
                prov.Ds_raznombre = txtRazonSoc.Text.ToUpper();
                prov.Ds_apellido = txtApellido.Text.ToUpper();
                prov.Ds_nomcomer = txtNombrecomercial.Text.ToUpper();
                prov.Nu_ruc = txtRuc.Text;
                prov.Id_vtipdoc = ddlidTDocIden.SelectedValue;
                prov.Nu_dociden = txtnuDoc.Text;
                prov.Id_grupo = ddGrupo.SelectedValue;
                prov.St_activo = "1";
                prov.Ds_direccion = txtDir.Text.ToUpper();
                prov.Ds_urbaniza = txtUrbanizacion.Text.ToUpper();
                prov.Id_pais =  ddPais.SelectedValue;
                prov.Id_depto = ddDepa.SelectedValue;
                prov.Id_prov =  ddProv.SelectedValue;
                prov.Id_dist =  ddDistrito.SelectedValue;
                prov.Ds_pobox = "";
                prov.Nu_telf1 = txtTelef.Text;
                prov.Nu_telf2 = txtNumCelular.Text;
                prov.Nu_telf3 = "";
                prov.Nu_fax1 = "";
                prov.Nu_fax2 = "";
                prov.Ds_emailco = txtEmail.Text;
                prov.Ds_url = txtWeb.Text.ToUpper();
                prov.Ds_nomreleg = txtNom.Text.ToUpper();
                prov.Ds_appreleg = txtApePaterno.Text.ToUpper();
                prov.Ds_apmreleg = txtApeMat.Text.ToUpper();
                prov.Nu_tlfreleg = txtTelf_.Text;
                prov.Nu_anxreleg = txtAnexo.Text;
                prov.Nu_nxtreleg = "";
                prov.Ds_emareleg  = txtMail.Text;
                prov.Id_vtipcalle = ddav.SelectedValue;
                prov.Id_vendedor  = "";
                prov.Nu_maquinas  = 0;
                prov.Nu_trabaja   = 0;
                prov.Id_cpago     = "";
                prov.Nu_lcredit   = 0;
                prov.Nu_placredit = 0;
                prov.Nu_diapag1 = "0";
                prov.Nu_diapag2 = "0";
                prov.Nu_diapag3 = "0";
                prov.Nu_diapag4 = "0";
                prov.Nu_diapag5 = "0";
                prov.Nu_diapag6 = "0";
                prov.Nu_diapag7 = "0";
                prov.Ho_diapag1_1 = "00:00";
                prov.Ho_diapag1_2 = "00:00";
                prov.Ho_diapag2_1 = "00:00";
                prov.Ho_diapag2_2 = "00:00";
                prov.Ho_diapag3_1 = "00:00";
                prov.Ho_diapag3_2 = "00:00";
                prov.Ho_diapag4_1 = "00:00";
                prov.Ho_diapag4_2 = "00:00";
                prov.Ho_diapag5_1 = "00:00";
                prov.Ho_diapag5_2 = "00:00";
                prov.Ho_diapag6_1 = "00:00";
                prov.Ho_diapag6_2 = "00:00";
                prov.Ho_diapag7_1 = "00:00";
                prov.Ho_diapag7_2 = "00:00";
                prov.St_vtipcli = ddCliente.SelectedValue;
                prov.St_vtippro = ddProveedor.SelectedValue;
                prov.St_prospecto  = "0";
                prov.Id_ucrearec   = Session[ConstSessionVar.IDLOGON].ToString();
                BTercero.Btercero_mnt01(prov);
                lblMensaje.Text = "Datos Grabados";
               

            break;
                case Constants2.ConstMenuToolbarValue.BUTTON_SAVENEW:
              

                case Constants2.ConstMenuToolbarValue.BUTTON_EXIT:
            this.Response.Redirect("WfProveedorBnd.aspx");
                    break;
            }
        }

        protected void ddPais_SelectedIndexChanged(object sender, EventArgs e)
        {
           WebHelper.LoadListControl2(ddDepa, BUbigeo.Departamento_qry01(ddPais.SelectedValue), "dsNombre", "idDepa");
        }

        protected void ddDepa_SelectedIndexChanged(object sender, EventArgs e)
        {
            WebHelper.LoadListControl2(ddProv, BUbigeo.Provincia_qry01(ddPais.SelectedValue, ddDepa.SelectedValue), "dsNombre", "idProv");
        }

        protected void ddProv_SelectedIndexChanged(object sender, EventArgs e)
        {
            WebHelper.LoadListControl2(ddDistrito, BUbigeo.Distrito_qry01(ddPais.SelectedValue, ddDepa.SelectedValue, ddProv.SelectedValue), "dsNombre", "idDist");
        }

 
    }
}